#ifndef GSTENGINE_H
#define GSTENGINE_H

#include "enginebase.h"

class DeviceFinder;


class GstEngine : public Engine::Base
{
    Q_OBJECT
public:
    GstEngine();
    ~GstEngine();
    bool Init();
    void InitialiseGstreamer();

public slots:

    bool Play(quint64 offset_nanosec);
    void Stop();
private slots:

private:

    struct PluginDetails {
      QString name;
      QString description;
    };

    typedef QList<PluginDetails> PluginDetailsList;
    PluginDetailsList GetPluginList(const QString& classname) const;



    QList<DeviceFinder*> device_finders_;
};

#endif // GSTENGINE_H
